package com.itguigu.principle.singleresponsibility;

/**
 * 单一职责
 */
public class SingleResponsibility2 {
    public static void main(String[] args) {
        // 路上跑的
        RoadVehicle roadVehicle = new RoadVehicle();
        roadVehicle.run("小汽车");
        roadVehicle.run("摩托车");

        // 天上飞的
        AirVehicle airVehicle = new AirVehicle();
        airVehicle.run("波音747");

        // 水里跑的
        WaterVehicle waterVehicle = new WaterVehicle();
        waterVehicle.run("辽宁舰航母");
    }
}

/**
 * 公路运行交通工具类
 */
class RoadVehicle {
    /**
     * @param vehicle 需要在公路运行的交通工具
     */
    public void run(String vehicle) {
        System.out.println(vehicle + "公路运行");
    }
}

/**
 * 天上运行交通工具类
 */
class AirVehicle {
    /**
     * @param vehicle 需要在天上运行的交通工具
     */
    public void run(String vehicle) {
        System.out.println(vehicle + "天上运行");
    }
}

/**
 * 水上运行交通工具类
 */
class WaterVehicle {
    /**
     * @param vehicle 需要在水上运行的交通工具
     */
    public void run(String vehicle) {
        System.out.println(vehicle + "水上运行");
    }
}
